home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / The World of Computer Software.iso / drdtips.zip / 1302.TXT < prev    next >
Text File  |  1991-12-31  |  17KB  |  402 lines

  1. Document 1302
  2. Troubleshooting
  3.  
  4. Description:
  5.  
  6.  Troubleshooting
  7.  
  8. Isolating the Problem
  9.  
  10. If you encounter memory conflicts after you have arranged your
  11. device drivers and TSRs in the manner described in the previous
  12. chapter, your next step should be to isolate and identify the
  13. offending conflict. The best way to do this is to methodically
  14. load each of your drivers, TSRs, and application programs one at
  15. a time until you encounter the problem driver or program.
  16.  
  17. Note:
  18. To complete the following steps, you should be familiar with
  19. editing your config.sys and autoexec.bat files with a
  20. wordprocessor or text editor such as the DR DOS EDITOR, and with
  21. the REM command. Refer to Chapters 7 and 11 of the DR DOS 6.0
  22. User Guide.
  23.  
  24. Whenever you experiment with and change your config.sys and
  25. autoexec.bat files, you should always have a separate bootable
  26. floppy disk available containing the unedited, original versions
  27. of your config.sys and autoexec.bat files in case you need to
  28. reboot your computer from the A: drive. Then, if you need to go
  29. back to your original configuration, you can copy the original
  30. config.sys and autoexec.bat files from your backup diskettes
  31. onto your boot disk. (See Chapter 10 in the DR DOS 6.0 User
  32. Guide for information on how to create a bootable floppy disk.)
  33.  
  34. To isolate the source of your memory conflict, turn off those
  35. lines in your config.sys or autoexec.bat file that might be
  36. causing the problem.  Do this by editing the config.sys or
  37. autoexec.bat file and placing a REM comment at the beginning of
  38. each line you want to turn off. For example, to turn off the
  39. following config.sys line:
  40.  
  41. DEVICE = C:\DRDOS\EMM386.SYS /F=AUTO /K=2024
  42.  
  43. add the REM comment to the beginning of the line:
  44.  
  45. REM DEVICE = C:\DRDOS\EMM386.SYS /F=AUTO /K=2024
  46.  
  47. If you find a particular line is not causing a problem, you can
  48. reactivate it by simply removing the REM statement.
  49.  
  50. Note:
  51. You can also use the DR DOS conditional "?" statement to
  52. activate/deactivate config.sys line commands. See Chapter 11 of
  53. the DR DOS 6.0 User Guide for details. If you use this option,
  54. make careful note of whether you said "yes" or "no" to loading
  55. each line.
  56.  
  57. After turning off the suspect lines with a REM statement, reboot
  58. your computer to retest the driver/application with which you
  59. first encountered your memory problem. If the system runs
  60. correctly, reenter your config.sys or autoexec.bat file and
  61. remove the REM command from one line and then reboot and reload
  62. the application. Continue this process until you again encounter
  63. the memory problem. When it recurs, you will have isolated the
  64. line in the config.sys or autoexec.bat file that is causing the
  65. memory conflict.  You can now take action to resolve the
  66. conflict, as described in the following sections.
  67.  
  68. Possible Problems
  69.  
  70. After you have isolated the problem driver or program, you can
  71. use the techniques described below to make the appropriate
  72. corrections to your computer's configuration. 
  73.  
  74. Some problems that you might encounter after installing the
  75. MemoryMAX drivers include:
  76.  
  77. *Insufficient conventional memory to load a particular driver or
  78. program.
  79.  
  80. *HILOAD, HIINSTALL, or HIDEVICE features do not seem to operate
  81. correctly
  82.  
  83. *Computer locks up
  84.  
  85. *Upper memory conflicts
  86.  
  87. *Video problems
  88.  
  89. *Error message: "Packed file is corrupt."
  90.  
  91. Each of these problems, and the techniques to correct them, are
  92. described below.
  93.  
  94. Insufficient Conventional Memory
  95.  
  96. After using the DR DOS 6.0 memory management system to increase
  97. conventional memory, there should not be a problem due to
  98. insufficient memory.  However, if a large number of device
  99. drivers or TSRs are in use, this problem might still occur. 
  100. Review Chapter 1 of this guide to ensure you have taken the
  101. proper steps to optimize system memory. Try the MEMMAX +L
  102. command in case an earlier command or batch file disabled
  103. available low memory.  Finally, if the application does not use
  104. the graphics display area, try the /V switch of the DR DOS 6.0
  105. memory manager, followed by MEMMAX +V before loading your
  106. application.
  107.  
  108. HILOAD, HIINSTALL, or HIDEVICE Considerations
  109.  
  110. Each of these commands requires the availability of upper memory
  111. blocks (UMBs). You can verify that the UMBs are available by
  112. using the DR DOS MEM /B or /U commands to see a report of your
  113. memory usage (see Chapter 10 of the DR DOS 6.0 User Guide for a
  114. full description of the MEM command). Available UMB blocks will
  115. be marked as FREE under the Type column in the MEM listing.
  116.  
  117. The HILOAD, HIINSTALL, and HIDEVICE commands require prior
  118. installation of the EMM386.SYS or HIDOS.SYS driver. If the MEM
  119. report shows that upper memory is not being utilized, check your
  120. config.sys to make sure the driver has been properly installed
  121. and that the option switches have been entered correctly. If
  122. they are set, pay particular attention to the /FRAME, /AUTOSCAN,
  123. /INCLUDE, /BDOS, and /EXCLUDE switches to ensure that any upper
  124. memory address specified by these switches have been correctly
  125. set (a common error is using an "oh" instead of a zero).
  126.  
  127. If you use Microsoft Windows 3.0, the /WINSTD switch might have
  128. been set. The /WINSTD switch automatically blocks access to the
  129. UMBs, making them unavailable to HILOAD, HIINSTALL, and
  130. HIDEVICE. Windows 3.0 will not run properly in standard mode if
  131. UMBs have been used by something else. (See the "Using
  132. EMM386.SYS with Windows" on page 22.)
  133.  
  134. If you do not require the use of expanded memory, set the /FRAME
  135. switch to /FRAME=NONE.
  136.  
  137. The HILOAD command must be invoked before using the MEMMAX -U
  138. command to disable upper memory. Use the MEMMAX +U command to
  139. re-enable upper memory, if necessary. (Note that the DR DOS
  140. installation program automatically inserts the MEMMAX -U command
  141. in the autoexec.bat file; therefore, you must either put HILOAD
  142. above it, or use MEMMAX +U to enable upper memory).
  143.  
  144. If there appears to be sufficient upper memory available, but
  145. HILOAD, HIINSTALL, or HIDEVICE fail to put a particular TSR or
  146. driver into upper memory, some device drivers and TSR programs
  147. when initializing might actually expand and take up considerably
  148. more RAM than they will ultimately need. See "System Memory
  149. Optimization" on page 9 for a complete description of this
  150. problem.
  151.  
  152. Computer will not boot or locks up
  153.  
  154. Reboot your machine with a bootable floppy disk in drive A:.
  155. Follow the instructions in "Isolating the Problem" above and
  156. edit the C: drive config.sys and/or autoexec.bat files to turn
  157. off and isolate, with the REM command, those lines in the files
  158. that might be causing the problem.
  159.  
  160. The most probable cause is that the DR DOS 6.0 memory manager
  161. has moved something into a region of upper memory required by a
  162. hardware device driver attempting to use the same areas of
  163. memory.  Use the /EXCLUDE option (see page 18) switches to
  164. remedy the problem.
  165.  
  166. If a hardware device is not causing a conflict, and the lockup
  167. occurs with a particular program, this program might become
  168. confused when upper or low memory is available. Try using the
  169. command MEMMAX -U and/or MEMMAX -L before loading the program.
  170.  
  171. Upper Memory Conflicts: Using /EXCLUDE
  172.  
  173. Your machine or the accessories in your machine might be using
  174. upper memory addresses that are also being accessed by the DR
  175. DOS 6.0 memory manager. To prevent this, exclude EMM386.SYS or
  176. HIDOS.SYS access to the upper memory address range that is
  177. causing the conflict. The following recommendations apply to the
  178. EMM386.SYS driver for 386 and 486 computers, or the HIDOS.SYS
  179. driver on 286 computers with shadow RAM.
  180.  
  181. Some typical symptoms of upper memory conflict include:
  182.  
  183. *inability to log onto networks
  184.  
  185. *inability to access hard or floppy disk drives
  186.  
  187. *inability to format low-density floppy disks in high density
  188. drives
  189.  
  190. *error messages such as "card not found."
  191.  
  192. A good starting place to check for upper memory usage is the
  193. documentation for any accessory boards or drivers you have
  194. installed; if they require upper memory, it will usually be
  195. indicated in the documentation.
  196.  
  197. If you encounter such problems and suspect that upper memory
  198. conflicts can be the cause, first REM out the memory manager
  199. line of the config.sys file completely. If the problem
  200. disappears, you know that the memory driver is part of the
  201. conflict and you can begin to look at changing switches to
  202. correct the problem.  Use the DR DOS EDITOR and change the
  203. following settings in your config.sys file:
  204.  
  205. 1.If the EMM386.SYS /BDOS option is set to /BDOS=AUTO,  
  206. switch it to /BDOS=FFFF, 
  207.  
  208. 2.Save config.sys.
  209.  
  210. 3.Reboot.
  211.  
  212. 4.Retest.
  213.  
  214. If the problem recurs, change the /R=AUTO setting to /R=NONE,
  215. and then save the config.sys file, and reboot the computer to
  216. retest.
  217.  
  218. You can also use the /EXCLUDE switch to exclude an area of upper
  219. memory that the /AUTOSCAN feature detects as being available
  220. but, in fact, might be used by another device, such as a network
  221. card.
  222.  
  223. The /EXCLUDE Option
  224.  
  225. If the hardware documentation does not specify a memory range to
  226. be excluded, you can use the /EXCLUDE option to discover if
  227. there is an upper memory conflict. This option is used to
  228. systematically exclude sections of upper memory from being used
  229. by EMM386.SYS by excluding upper memory "half-at-a-time." For
  230. example, use this "halving" method to exclude the top half of
  231. the upper memory range first, reboot the computer and test the
  232. problem. Then, if the problem recurs, change the /EXCLUDE
  233. setting to exclude the lower half of upper memory, reboot, and
  234. retest.
  235.  
  236. After discovering in which half of upper memory the conflict
  237. resides, repeat the process by dividing that memory range in
  238. half.  You can use this technique to break down the entire upper
  239. memory range, half-by-half, until you pinpoint the area of
  240. conflict.
  241.  
  242. You must use the hexadecimal notation of the memory address with
  243. the /EXCLUDE switch. The following brief explanation is provided
  244. for those unfamiliar with using the hexadecimal system.
  245.  
  246. Hexadecimal Addresses
  247.  
  248. The 384 Kbyte range of upper memory resides between the
  249. hexadecimal memory addresses of A000 and FFFF. The upper half of
  250. this range lies between the addresses D000 and FFFF; the lower
  251. half lies between A000 and CFFF.  Because A000 to BFFF is
  252. typically reserved for video display, you will normally work
  253. only with addresses C000 to FFFF.
  254.  
  255. To exclude the lower half of the C000 to FFFF range, enter the
  256. following /EXCLUDE command in your EMM386.SYS or HIDOS.SYS line
  257. in the config.sys file:
  258.  
  259. /E=C000-DFFF
  260.  
  261. Then, reboot your computer to test the exclusion. If the problem
  262. persists, edit the /EXCLUDE statement to exclude the other half
  263. of the C000 to FFFF range by entering the following in the
  264. config.sys file:
  265.  
  266. /E=E000-FFFF
  267.  
  268. Continue excluding a smaller and smaller range of memory until
  269. you have found the smallest possible exclusion, which still
  270. permits proper functioning.
  271.  
  272. Note:
  273. The first address in each range of memory (EXCLUDE, INCLUDE,
  274. etc.) must end in "00" and the second must end in "FF."
  275.  
  276. Note that you can also exclude multiple memory ranges with the
  277. /EXCLUDE statement by separating the ranges with a comma, e.g.,
  278. /E=D000-D7FF,DA00-DBFF. 
  279.  
  280. The chart below shows how this process works, and shows the
  281. memory address for the 64 Kbyte range in the "D" segment of
  282. upper memory.
  283.  
  284. D000-DFFF = 64K = D000-D7FF = 32K + D800-DFFF = 32K = 64K TOTAL
  285. D000-D7FF = 32K = D000-D3FF = 16K + D400-D7FF = 16K = 32K TOTAL
  286. D800-DFFF = 32K = D800-DBFF = 16K + DC00-DFFF = 16K = 32K TOTAL
  287. D000-D1FF = 8K + D200-D3FF = 8K = 16K TOTAL
  288. D400-D5FF = 8K + D600-D7FF = 8K = 16K TOTAL
  289. D800-D9FF = 8K + DA00-DBFF = 8K = 16K TOTAL
  290. DC00-DDFF = 8K + DE00-DFFF = 8K = 16K TOTAL
  291.  
  292. (The first "D" in each hex address above can be replaced with C,
  293. E, or F when working with those segments.)
  294.  
  295. Once you find the conflicting range of upper memory, permanently
  296. exclude it from being used by EMM386.SYS or HIDOS.SYS by using
  297. the /EXCLUDE statement.
  298.  
  299. Video Problems
  300.  
  301. If you experience problems with your video display after
  302. installing MemoryMAX drivers, a possible cause is that your
  303. video adapter is attempting to use some of the same upper memory
  304. addresses being allocated by EMM386.SYS or HIDOS.SYS.
  305.  
  306. A quick way to determine if your current memory setup is causing
  307. a conflict with a video (or other device) board is to "turn off
  308. the entire memory driver line in your config.sys file by using
  309. the REM command or the "?" technique discussed previously in
  310. "Isolating the Problem."  If the problem does not recur with the
  311. memory driver "turned off," the cause of the problem is probably
  312. an upper memory conflict.
  313.  
  314. See "The DR DOS MemoryMAX System" on page 2 for information
  315. abouthow to determine if upper memory is being used by drivers
  316. and hardware boards.
  317.  
  318. Use the EMM386.SYS or HIDOS.SYS /VIDEO option to reserve
  319. graphics memory addresses normally occupied by video display
  320. adapters (see Chapter 11 of the DR DOS 6.0 User Guide). 
  321.  
  322. If the /VIDEO option is set, and the video corruption is
  323. occurring with a graphics program, be sure that the MEMMAX -V
  324. switch is operative. When only text displays are required, the
  325. MEMMAX +V switch can borrow some of the graphics memory areas
  326. and add it to conventional memory, providing more space for text
  327. applications. However, if an application requires graphical
  328. displays, you must be sure this memory area is available to
  329. video by issuing the MEMMAX -V command.
  330.  
  331. If the video display is corrupted only during use with the DR
  332. DOS TaskMAX task switcher, refer to the readme file (in the DR
  333. DOS directory) or the Release Note for instructions on how to
  334. use the TaskMAX /F switch.
  335.  
  336. Network Hardware Interfacing
  337.  
  338. It is common for network hardware to utilize areas of upper
  339. memory and thus conflict with MemoryMAX allocations of that
  340. memory.  If this occurs, you might be unable to log onto the
  341. network or random lockups might occur. See "Upper Memory
  342. Conflicts" on page 17, and "Using Network Software" on page 30,
  343. for a full discussion of how to deal with upper memory conflicts
  344. such as these and how to use the EMM386.SYS /EXCLUDE switch to
  345. exclude the conflicting areas of upper memory.
  346.  
  347. Another possible cause of network problems is that your network
  348. driver is designed for use with MS-DOS versions other than
  349. versions 3.3+. Network drivers designed for use with MS-DOS
  350. versions 4.0+ and 5.0 would not be appropriate for the DR DOS
  351. 6.0 operating system. (See "Using Network Software" on page 30)
  352.  
  353. Floppy Drive Does Not Work
  354.  
  355. If you have installed Super PC-Kwik and have enabled the /D+
  356. switch, your disk controller must be 100% IBM compatible. Reset
  357. the /D+ switch to /D- (the /D# switch works on some controllers)
  358. to turn off PC-Kwik's advanced caching for the floppy drives
  359. (advanced caching for your hard drive remains in effect).
  360.  
  361. SCSI Disk Drive Problems
  362.  
  363. The DR DOS 6.0 operating system supports virtual DMA and bus
  364. master controllers. Any problem with SCSI drives is probably due
  365. to a memory conflict (see "Upper Memory Conflicts" on page 17).
  366.  
  367. Expanded (EMS) Memory Problems
  368.  
  369. If a program that requires EMS memory reports that no EMS is
  370. available or locks up when executed, the problem might be that
  371. the application assumes that the LIM page frame starts at a
  372. specified address. 
  373.  
  374. Remedy this problem by ensuring that the LIM page frame defined
  375. in the application's SETUP program or documentation matches the
  376. settings in EMM386.SYS or EMMXMA.SYS. The /F= switch defines the
  377. start of the LIM page frame.
  378.  
  379. Another cause of insufficient LIM memory occurs if you are using
  380. TaskMAX in expanded memory and too many tasks have been loaded.
  381. Unload a few of the tasks and restart the program.
  382.  
  383. Error message: "Packed file is corrupt."
  384.  
  385. This error might occur when the first 64 Kbytes of conventional
  386. memory (called low memory) have been made available through the
  387. use of MemoryMAX. Normally, the operating system occupies this
  388. entire area.  Some applications were written using packing
  389. utilities that become confused when run in this low memory.  If
  390. this happens, the following message appears:
  391. Packed file is corrupt.
  392.  
  393. For an easy workaround, use the MEMMAX -L command to disable low
  394. memory before running the application.  Then load and run your
  395. application.  After exiting the application, use MEMMAX +L to
  396. enable the low memory area once again.
  397.  
  398. Because this problem can occur with other memory managers,
  399. including QEMM.386, your application vendor might be able to
  400. supply you with an updated application that does not exhibit
  401. this problem.
  402.